package com.easygo.api;

import com.easygo.pojo.Brand;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * @BelongsProject: easygo
 * @BelongsPackage: com.easygo.api
 * @Author: wangzhen
 * @QQ:425042686
 * @CreateTime: 2024-03-27 11:26
 * @Description: TODO
 */
@FeignClient(value = "easygo-brand-service") // 声明这是一个Feign客户端，value指定要调用的服务名称
public interface BrandClient {

    @RequestMapping("/brand_getBrands") // 定义一个请求映射，用于获取品牌列表
    public List<Brand> getBrands();

    @RequestMapping("/brand_add") // 定义一个请求映射，用于添加品牌
    public int addBrand(@RequestBody Brand brand); // 使用@RequestBody注解将请求体中的JSON数据转换为Brand对象

    @RequestMapping("/brand_getBrandById") // 定义一个请求映射，用于根据id获取品牌
    public Brand getBrandById(@RequestParam Integer id); // 使用@RequestParam注解将请求参数中的id转换为Integer类型

    @RequestMapping("/brand_updateBrand") // 定义一个请求映射，用于更新品牌
    public int updateBrand(@RequestBody Brand brand); // 使用@RequestBody注解将请求体中的JSON数据转换为Brand对象

    @RequestMapping("/brand_delete") // 定义一个请求映射，用于删除品牌
    public int deleteBrand(@RequestParam Integer id); // 使用@RequestParam注解将请求参数中的id转换为Integer类型

    @RequestMapping("/brand_deleteSome") // 定义一个请求映射，用于批量删除品牌
    public int deleteSome(@RequestParam String ids); // 使用@RequestParam注解将请求参数中的ids转换为String类型
}
